1. Field of the Invention
This invention relates to the transmission of data over a public switched telephone network (PSTN). More specifically, this invention relates to a point-of-sale dial data network with significantly enhanced credit authorization, mail messaging, and file transfer capabilities. This enhancement is achieved through the implementation of a unique dial-up asynchronous communications protocol that is the subject of this invention.
2. Description of the Related Art
Instantly verified electronic transactions are a growing trend in this service oriented world. Virtually gone are the days when a credit card transaction consisted of manually imprinting the card and then calling up a live human being to authorize the transaction. One now sees automatic card readers connected to computerized cash registers that communicate over a vast electronic network of interconnected authorization computers that quickly authorize one's credit card transaction, debit card transaction, check approval, or other type of financial or non-financial transaction. At least this massive electronic network hopefully approves one's transaction quickly. Unfortunately, as automatic credit card and debit card transacting have become more convenient, the networks have become more crowded, and transactions require increasing amounts of time for approval.
A recent innovation evolving from automatic credit card transactions has been unattended credit terminals at the point of sale or point of service. For example, petroleum service stations have increasingly begun to use a credit card reader and automatic transaction terminal for each individual gasoline pump. This allows customers to purchase gasoline on their credit or debit cards completely at the product dispenser without waiting in lines to sign their credit slip at the checkout counter.
Unfortunately, this also causes problems. A gas station with 15 pumps would ostensibly require 16 credit card transaction terminals, one for each pump and one for inside. This would usually require 16 telephone lines over which to communicate the transactions. As it is more desirable to use a single telephone line to handle all of these transactions, various parties developed systems for transmitting these transactions from multiple terminals over a single telephone line. Unfortunately, these systems suffer the drawback of not allowing a second transaction to begin until the first transaction has been completed, that is, until the first transaction has either been approved or disapproved. Thus performance is decreased and customers would have to wait.
To overcome the performance limitations, some network companies use a local negative file in the POS terminal while others simply run a "hot pump" while the authorization is pending approval. These methods have high administrative expenses or high bad debt rates. In the case of the local negative file, the terminal requires a large amount of memory for storing the file and the file must be updated frequently. In the case of the "hot pump," the merchant in some cases has already dispensed product when the credit denied message is returned, those resulting in lost product. It is desirable to perform a live authorization of each sale prior to dispensing product and yet not have irritating delays.
Two communications protocol related problems limit the utility of conventional dial data networks for the credit card industry. First, credit authorization is a serial process when dial up asynchronous communications protocols are used. The serial nature of these processes causes a backlog when multiple authorizations are pending. That is, each subsequent authorization cannot begin until the completion of the preceding authorization. Second, these protocols do not provide for mail messaging or file transfer.
Expanding on the first problem, conventional dial-up asynchronous communications protocols for a point-of-sale or point-of-service (POS) application establish a single-threaded, or serial, transaction process between the merchant's POS terminal and the host computer. Said another way, only one POS transaction may be communicated to the host at a time. While the host is processing the current request, the merchant's POS terminal cannot respond to additional requests. This is unacceptable in merchant locations with multiple POS terminals, such as service stations where the POS terminals are integrated into the motor fuel product dispensers.
Turning to the second problem, typical dial data networks are standalone entities optimized to perform single functions such as file transfer, mail messaging, claim adjudication or POS credit authorization. Due to varying performance, throughput, and cost requirements, it is rare to find dial data networks that combine these multiple functions in an efficient and cost effective manner. These problems are largely due to limitations in the communications protocols available for use in dial data networks. Synchronous communications protocols such as SNA and X.25 overcome these deficiencies, but they suffer from added complexity and large code size. Therefore, they are not commonly used in small, inexpensive terminals normally associated with dial-up POS applications.
The typical method of automating the credit card transaction approval process is to provide the retail store with a standalone authorization terminal equipped with a magnetic stripe card reader, a keyboard, a display, and an internal asynchronous modem that is connected to a local telephone line. When a credit card is moved through the magnetic stripe card reader, information is collected from the magnetic stripe of the card. The terminal application program then instructs the modem to go off-hook on the telephone line and dial a telephone number associated with a particular dial data network and host computer having approval authority for that card. After the call is answered, data communication is established, and information known as an authorization request is sent to the host computer. The request is processed, and an authorization code or other information is transmitted back to the terminal. Upon receiving the response, the terminal goes on-hook, and the call is terminated.
Communications protocols associated with POS authorizations are designed to efficiently move short messages (typically about one hundred characters in the request and fifty characters in the response) from single standalone POS terminals at the retail store to centrally located host computers. As the number of transaction approval requests increases at a particular merchant location, more POS authorization terminals, modems, and associated telephone lines are installed to maintain an acceptable level of service. The undesirable effect is the added expense of multiple modems and phone lines.
An alternative is to install multiple authorization terminals associated with a single communications controller and a single asynchronous modem that is connected to one telephone line. The desirable result is that the communications controller leverages multiple POS terminals over the expense of a single modem and telephone line. This, however, is offset by inherent delays in the conventional dial data communication process.
Examining the typical dial data communication protocol that controls the flow of messages from the POS terminal to the host computer reveals the single-threading type of protocol. The data communications protocols typically used are the Visa I, Visa II, Visa 90, T3POS, or similar protocols. These protocols are typically asynchronous, half-duplex, byte-oriented protocols with limited error detection and recovery characteristics. Under these protocols, after a connection is made, the network front-end processor (FEP) polls the POS terminal and the terminal responds with an authorization request. The POS terminal, or the communications controller and all associated POS terminals, must then wait until the host returns a response before initiating another authorization request. This is known as sequential, or single-threaded, communication.
This process poses few problems in merchant locations with a single POS terminal. Customer dissatisfaction does occur, however, in the multi-terminal example, particularly when one of the POS terminals is actually a pay point in a gas pump. With conventional single-threaded dial POS protocols, the customer will be subjected to unexpected and unexplained delays in credit approval when the store is busy with numerous credit authorizations, as the gas pump terminal cannot begin its authorization request until the store terminal and other, higher priority, gas pump terminals have received responses to their authorization requests. One response to this problem has been to set a pre-authorized amount level, or floor limit, below which authorization requests are not made to the host computer. However, this local in-store pre-authorization has the problem of increasing losses because a certain percentage of the credit transactions would not be approved by the host. Therefore a POS protocol is desirable which improves the response times in the multi-terminal cases, thus allowing all transactions to be verified with pre-authorized amounts not having to be set or changed to resolve peak load problems. It is also desirable for the POS protocol to allow the transmission of batch files and other enterprise store data over the transaction approval network without unduly impeding the transaction approval response time or appreciably increasing cost.